我想絕大多數的 AI 人,都很熟悉 Colab 的使用方法,如果你從來沒有使用過 Colab,不妨點擊這個網址開始學習 (colab 介紹)。
老頭個人非常喜歡使用 Colab,除了工作上相關的機密資料及程式之外,我通常會在 colab 上先做實驗和測試。尤其是個人的 AI 學習及分享,Colab 是我使用的最主要平台。這一系列貼文的所有程式,老頭也將使用「Colab 筆記本」格式,放在 Google Drive 上分享給大家。
[Google Drive 分享的連結]
(https://drive.google.com/drive/folders/1qgZbqOjt5siMb3R30UXeqPIK4PysYIKw?usp=sharing) 這個連結,我通常一週上傳更新一次,所以鐵人賽期間,讀者們可能會看到一些還沒有發表的程式檔已經上傳,希望不會造成太大的困擾。
只要你有 Google 帳號,就可以使用基本的 Colab 服務,不需要額外的訂閱動作。對於單純學習 AI 的讀者來說,這個級別應該就夠了。但是如果你想要在 Colab 上執行一些複雜的動作 (例如訓練一個大模型) ,那可能會發生一些不愉快的事情,例如:
常常要不到 GPU
免費的資源畢竟有限,Google 內部有一套演算法,來判別是否要讓使用者佔用 GPU,而你使用的時間越長,你未來拿到 GPU 的機會就越少。沒有了 GPU,所有的運算就只能在 CPU 上執行,勉強可用,但是心裏就是不太舒坦。
從來沒有要到過 TPU
JAX 針對 TPU 做了很多執行效率的最佳化,老頭曾經試著用 Colab 級別來跑一些 TPU 相關的測試,但從來沒有成功過。就算我要到了 TPU,但程式一跑就「不明原因」的重啟了。
動不動就斷線
在開啟 Colab 筆記本之後,要真正執行 Python 程式碼之前,必須要先「連線」, Colab 才會分配 CPU、GPU、記憶體等程式所需的資源給你。當連線的期間,如果 Colab 發現你太久沒有和筆記本互動,或者它發覺你佔用 GPU 的時間太久了,它會主動斷線,你必須重新連線,才能繼續使用,而且你斷線前的執行結果全都付之一炬。
三不五時的要確認你是不是機器人
不知道是老頭的操作方法有問題,還是 Colab 太多疑,我常常會看到確認我是不是機器人的視窗彈出來,有點無奈。
除了基本的 Colab 外,Google 提供另外兩種付費級別,Colab Pro 以及 Colab Pro+,大家可以參考一下:
老頭目前剛剛訂閱 Colab Pro,使用起來確實比免費的方案好多了,基本上都可以要到 GPU,也可以訓練些不大不小的模型。一個月含稅 10 塊美金多一點,還算物美價廉。